package br.com.autoLeal.veiculo.bean;

import java.io.Serializable;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.autoLeal.bean.GenericBean;
import br.com.autoLeal.util.WebResources;
import br.com.autoleal.cliente.entity.Cliente;
import br.com.autoleal.cliente.entity.ClienteServiceBean;
import br.com.autoleal.veiculo.entity.Veiculo;
import br.com.autoleal.veiculo.service.VeiculoServiceBean;

@ManagedBean
@ViewScoped
public class ManterVeiculosBean extends GenericBean implements Serializable {

        private static final long serialVersionUID = -3467460247513445531L;

	    private Veiculo veiculo = new Veiculo();
	    private List<Veiculo> veiculos;

        @EJB
        private VeiculoServiceBean bean;
        
        private Veiculo veiculoExcluir;
        private String consulta;
        
        @PostConstruct
        public void init() {
                carregarVeiculos();
        }
        
        public void carregarVeiculos() {
        	this.veiculos = bean.buscarTodosVeiculo();
        }
        
        public void definirVeiculoExcluir(Veiculo v) {
        	this.veiculoExcluir = v;
    }

        public void excluirVeiculo() {
               	bean.excluirVeiculo(veiculoExcluir);
                carregarVeiculos();
                exibirMsgSucesso("Veículo excluído");
        } 
        
        public String editarVeiculo(Veiculo v) {
                WebResources.getFlash().put(WebResources.VEICULO, v);
                return "alterarVeiculo";
        }
        
        public void carregarListas() {
               veiculos = bean.buscarModeloPlacaChassiMarcaAno(this.consulta);
        }
        
       

        public String getConsulta() {
                return consulta;
        }

        public void setConsulta(String consulta) {
                this.consulta = consulta;
        }

		public Veiculo getVeiculo() {
			return veiculo;
		}

		public void setVeiculo(Veiculo veiculo) {
			this.veiculo = veiculo;
		}

		public List<Veiculo> getVeiculos() {
			return veiculos;
		}

		public void setVeiculos(List<Veiculo> veiculos) {
			this.veiculos = veiculos;
		}
}